home *** CD-ROM | disk | FTP | other *** search
- These Minutes should be considered a rough draft only - Megan 04/03/92
- ==============================================================================
- Notes from BGP WG - San Diego IETF - 3/19/92 9am
- [David Bolen - db3l@ans.net]
- ==============================================================================
-
-
- * Discussion of BGP-4 Extensions
-
- The largest portion of the BGP meeting was concerned with the discussion
- of the BGP4 document authored by Vince Fuller and Tony Li. The additions
- were made primarily to add the necessary support into BGP for classless
- inter-domain routing (CIDR).
-
- * IP Prefixes vs. Masks
-
- The need for carrying some form of network masks as part of BGP
- was discussed in the light of the need for classless inter-domain
- routing (CIDR). The necessary information could be carried either
- as a combination of network and netmask, or it could be encoded
- as a prefix with a length value.
-
- A key difference between the two proposals is that carrying an entire
- mask allows the use of non-contiguous masks, while a prefix requires
- that the mask be contiguous.
-
- The general consensus of the group was that non-contiguous masks
- presented several problems, especially in routing table lookups
- (where multiple entries can match), and in the automatic aggregation
- of such masks (which we aren't sure how to do yet, and it's critical
- for CIDR). Therefore prefixes, being more deterministic, were a
- better choice for BGP-4.
-
- It was agreed that masks could prove useful later when some of the
- trickier issues have been dealt with. In that case, they could
- always be added to a later version of the protocol.
-
- >> Use prefixes rather than masks.
-
- * Aggregation rules from BGP-4 document
-
- The group discussed the various rules presented in the BGP-4
- document to handle aggregation:
-
- * Rule 1 - always do longest match.
- * Rule 2 - Inject "poison" routes to avoid loops. In a multi-homed
- case, if the aggregator is the primary provider, the
- aggregator must also announce the longer prefix for the
- client (to override the same announcement via that client's
- other provider). If the aggregator is not primary, this
- additional announcement is not necessary.
- * Rule 3 - Punch hole to sever old route when switching providers.
- This requires an announcement withdrawal mechanism in BGP.
-
- In particular, rule 3 was discussed in that it required the addition
- of a withdrawal mechanism in BGP to withdraw a previous announcement
- (along the lines of the facility provided within IDRP).
-
- The largest concern if this wasn't provided was that packets could
- flow partially down a bad path before they were either bounced or
- black-holed. Also, traceroute would no longer function properly in
- such a case.
-
- The general consensus was that these problems were not critical
- enough to warrant the added complexity of the withdrawal mechanism,
- especially when interoperability with older implementations of BGP
- that didn't have such a mechanism was taken into account.
-
- >> Rules 1 & 2 ok - removing Rule 3.
-
- * Support for AS sets
-
- In order to be able to handle multi-level aggregation, the ability
- to specify an AS_PATH that included AS sets rather than simply a
- sequence is very important. If AS-1 and AS-2 both flow packets
- through AS-3, AS-3 would like to be able to aggregate routes if
- AS-1 and AS-2 fall under the same prefix. Since they represent
- different AS_PATHs, that is currently not possible.
-
- IDRP was brought up as an example of using sets. In IDRP, the
- RD_PATH (like BGP's AS_PATH) is an overall sequence of elements,
- where each element is either an RD sequence, or an RD set. An RD
- set implies that the packets flow through one or more of the RDs
- in the set, but not necessarily all of them, and no order is
- specified.
-
- IDRP also provides for the concept of routing confederations, which
- is a method for aggregating several routing domains into a single
- routing domain confederation (RDC) which is generally treated just
- like an RD when it appears in the RD_PATH.
-
- Using confederations was considered more powerful than just sets,
- but also more complicated, and not required for the CIDR support
- we want to include in BGP-4.
-
- A possibility was just to turn BGP's AS_PATH into a set, which would
- imply no particular order of AS traversal. However, this would
- prevent any route filtering based on AS order. Matt Mathis suggested
- having an AS_PATH that started with a sequence, and was followed
- by a set.
-
- This discussion also brought up the fact that the AS_PATHs would
- probably be growing as this structure would encourage the size of an
- AS to be small, which led to thinking about the assignment of AS
- numbers hierarchically in order to allow them to be aggregated
- as well. Finally, the discussion turned to whether AS values
- should be increased to 32-bit rather than 16-bit. Some people
- strongly felt it should be increased in size, especially now as we
- were making these other changes.
-
- >> General consensus for requiring sets/sequences, but not
- confederations. Stick with 16-bit AS, although moving to 32-bit
- at the same time as the AS set change was strongly discussed.
-
- * Parallel BGP sessions
-
- During the discussion, the issue of being able to run parallel BGP
- sessions turned out to primarily address the problem of wanting to
- filter on an AS wherever it shows up in the AS_PATH, rather than just
- the first AS (as is common in current applications). This is an
- implementation problem rather than one with the protocol.
-
- The point was made that it can be dangerous to run two BGP connections
- in the same host with the only exchange of information between them
- being a routing table handled through a common IGP.
-
- Therefore, it was decided that it wasn't worth changing the protocol
- to handle what was essentially an implementation issue.
-
- >> Dropped
-
- * NEXT_HOP Handling
-
- The NEXT_HOP discussion centered around the issue of allowing one
- BGP peer to pass along the address of some other host on a common
- wire as the NEXT_HOP value rather than using its own address.
- The knowledge that the other host was available would commonly have
- been determined via an IGP (such as OSPF), or by the fact that the
- BGP peer was maintaining sessions with both hosts.
-
- Yakov brought up IDRP as an example of this functionality but
- under control of the source, which can choose to add additional
- options to a NEXT_HOP announcement controlling whether the
- recipient can propagate the NEXT_HOP value. This addresses the
- multiple BGP session, but not the IGP case.
-
- The concern with allowing this optimization was that the new host
- was being included in the NEXT_HOP announcement without it being
- aware of its involvement. Under certain circumstances this can
- be very useful, but it can also easily violate policy or routing
- rules. It deserved some further investigation, but for now (and
- at least for BGP-4), it was decided to keep the current definition
- of NEXT_HOP.
-
- >> Keep definition/use same as is currently specified.
-
-
- * BGP/OSPF Interaction Document
-
- A short discussion of the current BGP/OSPF interaction document by
- Kannan Varadhan took place. The document is nearing completion, and
- only had a few changes since the previous IETF.
-
- * Tag bits
-
- If the upper ("trusted") bit of the tag is set, the tag was
- system generated or configured, and the following 3 bits are
- used to encode the completeness of the route and how it should
- be handled, as follows:
-
- pl 00 01 10 11
- c 0 <EGP> <l> <EGP><l,nh> never export reserved
- 1 <IGP> <l> <IGP><l,nh> out of band reserved
-
-
- Matt Mathis suggested that the term "trusted" may not be the
- most appropriate (it could be taken to imply that the network
- administrator isn't trusted). Tony Li suggested the substitution
- of the term "automatic" instead.
-
- >> Change "trusted" keyword to something like "automatic".
-
- * NEXT_HOP handling with subnets
-
- This issue dealt with an optimization for handling the case where
- you learn a set of routes through OSPF that represented an entire
- subnet for a network, and what to assign NEXT_HOP to in that case.
- The optimization in question was whether or not you still had to
- always place yourself in NEXT_HOP rather than the node through
- which the subnets were routed.
-
- It was agreed that this represented an implementation optimization
- and should not be dictated by this document, but left to the choice
- of the developer.
-
- >> Leave optimization to developers.
-
-
- A new revision of the document will be published with a fairly short
- deadline for comment, so that the document can then proceed through the
- standards process.
-
-
- * IBGP & OSPF Discussion
-
- Jeff Honig held a discussion about possible problems with the use of
- IBGP, and how the same information might be propagated through an IGP
- (specifically OSPF) rather than with IBGP connections. The main concerns
- with IBGP were the need for scaling of N^2 connections, and the bandwidth
- utilized for IBGP traffic.
-
- Enhancements to OSPF that were being discussed to be used to carry the
- external information included:
- - OSPF Variable Tags (to allow the encoding of a complete AS_PATH)
- - New OSPF Path Attribute LSA to propagate path/attribute pairs
- (to send unique path/attribute information around in separate
- packets that were referenced by the route announcements)
-
- During the discussion, the general feeling was that the difference between
- IBGP resource usage (N-1 TCP connection blocks on each border router (BR),
- and bandwidth) and the resource required to distribute the same information
- via an IGP was not significantly different. Also, trying to store external
- information in internal routers could cause physical resource problems
- (such as memory) for those routers.
-
- One agreed issue with IBGP was router discovery. Using the IGP to aid
- the BRs in discovering each other was considered an important feature.
- At a minimum, all that would be required is a single flag bit to be
- carried by the IGP to indicate that a host was a BR. Ideally several
- bits to encode additional information would be useful.
-
- >> General discussion felt that IBGP resource utilization was not
- significantly more than that introduced by having the IGP carry EGP
- information.
-
- >> Agreement was reached that border router discovery was important and
- that some bits (at least 1) should be requested from IGPs such as
- OSPF to support this.
-
-
- * BGP <-> IS-IS Interaction Document
-
- Sharad Sanghi held a discussion on the BGP/IS-IS interaction document
- that he and Atul Bansal had authored.
-
- The general issues were similar to the BGP/OSPF interaction document.
- The basic question discussed was in regards to the advantages and
- disadvantages to doing route injection vs. piggybacking vs. just using
- IBGP.
-
- As with the previous IBGP vs. IGP (OSPF) discussion, the group felt
- that it was not clear that the savings in resources by eliminating IBGP
- and using IS-IS to carry external routing information was worth the
- work to transfer the routes.
-
- Router discover was still very useful, so adding bits to IS-IS (which
- it already has room to support) is definitely desired. Using IBGP with
- these bits for discovery should be fine for stub domains. For transit
- systems, it could prove useful to consider the injection/piggybacking
- cases, which should be studied further.
-